home *** CD-ROM | disk | FTP | other *** search
- 1 poke53280,0:poke53281,0
- 2 ra = 5
- 5 nu= 0
- 6 fa = 1000.82836
- 10 rem ****************************************
- 20 rem * main v1.1 (c) by markt und technik *
- 30 rem * 1991 *
- 40 rem * written by hgrb *
- 50 rem * 1991 *
- 60 rem ****************************************
- 70 lw=8: rem laufwerksnummer
- 80 ifa=0thena=1:load"messzyklus",lw,1
- 81 ifa=1thena=2:load"messzyklus2",lw,1
- 85 print"[147]moechten sie den a/d-wandler eichen?"
- 86 print"(j/n)"
- 87 geta$:ifa$=""then87
- 88 ifa$="j"then1000
- 89 ifa$<>"n"then86
- 90 z%(1)=2:z%(2)=2:z%(3)=2:z%(4)=10:z%(5)=10:z%(6)=10
- 100 s%(1)=1:s%(2)=15:s%(3)=29:s%(4)=1:s%(5)=15:s%(6)=29
- 110 l$=" "
- 120 print"[147] 64'er messlabor "
- 130 dimma$(6,4)
- 140 open1,lw,15,"i"
- 150 open2,lw,2,"konfigmes,s,r"
- 160 input#2,n :rem anzahl installierter module
- 170 for m = 1 to n :rem moduldaten einlesen
- 180 : input#2,g$(m) :rem zu messende groesse
- 190 : input#2,e$(m) :rem einheit des messwerts
- 200 : input#2,b(m) :rem bildschirmposition
- 210 : input#2,a(m) :rem archivierung?
- 220 : input#2,n$(m) :rem archivierungsdatei
- 230 next m :rem naechstes modul
- 231 close2
- 232 close1
- 240 rem *************************************
- 250 rem * start der messroutinen *
- 260 rem *************************************
- 270 rem initialisierung
- 280 gosub60000 : rem hier kann funkuhrroutine eingebaut werden
- 285 print"[147] 64'er messlabor "
- 290 for i = 1 to 6
- 300 : ma$(i,0) = "modul "+str$(i)+" "
- 310 : ma$(i,1) = "000000[146]"
- 320 : ma$(i,2) = "unit[146]"
- 330 : ma$(i,3) = "[158] [146]"
- 340 : m = i
- 345 : bs = i
- 350 : gosub 570: rem maske aufbauen
- 360 next i
- 370 print"";
- 380 fora=1to8
- 390 : print"[165]"spc(11)"[167]"spc(13)"[167]"spc(12)"[167]";
- 400 next a
- 410 print"[207][183][183][183][183][183][183][183][183][183][183][183][208][183][183][183][183][183][183][183][183][183][183][183][183][183][208][183][183][183][183][183][183][183][183][183][183][183][183][208]";
- 420 fora=1to8
- 430 : print"[165]"spc(11)"[167]"spc(13)"[167]"spc(12)"[167]";
- 440 next a
- 450 print"[183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183]";
- 455 open1,8,15,"i"
- 460 form=1ton
- 470 : bs=m
- 480 : on m gosub 10000,13000,11000,12000,10000,10000
- 490 ma$(m,0)=""+g$(m)+left$(l$,10-len(g$(m)))
- 500 ma$(m,2)=""+e$(m)+left$(l$,4-len(e$(m)))
- 510 : ma$(m,1)=""+right$(str$(an),7)+left$(l$,6-len(str$(an)))
- 520 : bs =b(m)
- 530 : gosub570
- 535 gosub 61000
- 536 if a(bs) = -1 then gosub 59000: rem archivierung?
- 540 next m
- 550 goto460
- 560 end
- 570 rem ************************************
- 580 rem *bildschirmausgabe anzeigefeld *
- 590 rem *uebergabewert: nummer der *
- 600 rem *ausgabeposition in bs *
- 610 rem ************************************
- 620 print"";: rem auf homeposition
- 630 for a = 0 to z%(bs) : rem zeilen-
- 640 : print"";
- 650 next a
- 660 for a = 1 to s%(bs) : rem und spalten-
- 670 : print""; :rem position
- 680 next a : rem einstellen
- 690 print ""ma$(m,0); : rem ausgabe messgroesse
- 700 print"[157][157][157][157][157][157][157][157][157][157]";ma$(m,1);ma$(m,2); : rem ausgabe wert und einheit
- 710 print"[157][157][157][157][157][157][157][157][157][157]";ma$(m,3);
- 720 return
- 1000 print"[147]eichung des analog/digitalwandlers"
- 1010 print"schliessen sie den eingang des"
- 1020 print"a/d-wandlers mit einer drahtbruecke"
- 1030 print"kurz (entspricht 0 volt).
- 1040 [153]"druecken sie dann eine taste!"
- 1050 [161]a$
- 1060 [139]a$[178]""[167]1050
- 1070 bs[178]1
- 1080 [129]a[178]1[164]10
- 1090 : [141]5000
- 1100 : n[178]n[170]fz
- 1110 [130]a
- 1120 n[178]n[173]10
- 1130 [153]"eichwert fuer 0volt ist ";n
- 1140 [153]"bitte tragensie diesen wert im"
- 1150 [153]"programm ein mit:"
- 1160 [153]"5 n = <eichwert>"
- 1170 [153]"verbinden sie nun den eingang"
- 1180 [153]"des a/d-wandlers mit 5 volt."
- 1190 [153]"druecken sie dann eine taste."
- 1200 [161]a$
- 1210 [139]a$[178]""[167]1200
- 1220 bs[178]1
- 1230 [141]5000
- 1240 [129]a[178]1[164]10
- 1250 : [141]5000
- 1260 : fa[178]fa[170]fz
- 1270 [130]a
- 1280 fa[178]fa[173]10
- 1290 [153]"die steigung betraegt ";fa[173]5
- 1300 [153]"tragen sie diesen wert im"
- 1310 [153]"programm ein mit:"
- 1320 [153]"6 fa = <steigung>"
- 1330 [153]"danach muss das programm unbedingt"
- 1340 [153]"unter dem namen main v1.2e"
- 1350 [153]"auf disk gespeichert werden!"
- 1360 [128]
- 5000 [143] ************************************
- 5010 [143] * analogmessroutine *
- 5020 [143] * uebergabewert: analogmodul- *
- 5030 [143] * nummer in variable bs *
- 5040 [143] * eichwerte fuer nullpunkt in *
- 5050 [143] * n, fuer steigung in fa *
- 5060 [143] ************************************
- 5070 [151]56579,[194](56579)[176] 224
- 5080 [151] 56577,m[172]32 :[143] analogport waehlen
- 5090 [158] 53100 :[143] timing nur in masch.
- 5100 fz [178] (255[171][194](56580))[170](255[171][194](56581))[172]256
- 5110 u [178] (fz [171] nu) [173] fa :[143] eichung
- 5120 [142]
- 10000 [143] ************************************
- 10010 [143] * temperaturmodul *
- 10020 [143] * uebergabe: analogportnummer in bs*
- 10030 [143] ************************************
- 10035 nt[178]2224.400:ns[178]23.5700
- 10036 [151]56579,[194](56579)[176]224
- 10037 [151]56577,m[172]32
- 10040 [129]te[178]1[164]1000
- 10050 [130]
- 10060 [141] 5000
- 10100 an [178][181](((fz[171]nt)[173]ns)[172]10[170].5)[173]10
- 10109 [139]an[177][178]100[167]an[178]99.99
- 10110 [142]
- 11000 [143] ************************************
- 11010 [143] * druckmodul *
- 11020 [143] * uebergabe: analogportnummer in bs*
- 11030 [143] ************************************
- 11040 nt[178]0000.000:ns[178]2.10970464
- 11050 [151]56579,[194](56579)[176]224
- 11060 [151]56577,m[172]32
- 11070 [129]te[178]1[164]1000
- 11080 [130]
- 11090 [141] 5000
- 11100 an [178] [181]((fz[171]nt)[173]ns)
- 11110 [139]tl[178]0[167]tl[178]fz
- 11120 [139]an[177][178]10000[167]an[178]9999
- 11130 [139]dm[179][177]3[167]11220
- 11140 tm[178]tm[173]dm
- 11150 [153]""[166]s%(bs))" cmd cmd "
- 11160 [153][166]s%(bs))
- 11170 [139]tm[177]tl[170].3[167][153]"+"
- 11180 [139]tm[179]tl[171].3[167][153]"-"
- 11190 [139]tm[179][178]tl[170].3[175]tm[177][178]tl[171].3[167][153]"="
- 11200 tl[178]tm
- 11210 tm[178]0
- 11220 dm[178]dm[170]1
- 11230 [139]dm[178]90[167]dm[178]0
- 11240 tm[178]tm[170]fz
- 11250 [142]
- 12000 [143] ************************************
- 12010 [143] * regenmodul *
- 12020 [143] * uebergabe: analogportnummer in bs*
- 12030 [143] ************************************
- 12040 rw[178]0
- 12050 nt[178]28.000:ns[178]0.946405
- 12060 [151]56579,[194](56579)[176]224
- 12070 [151]56577,m[172]32
- 12080 [139] re[178]1[167]re[178]0:[141]12170
- 12090 [129]te[178]1[164]1000
- 12100 [130]
- 12110 [141] 5000
- 12120 an [178][181]((fz[171]nt)[173]ns)
- 12130 [139]an[179]0[167]an[178]0
- 12140 rm[178]an
- 12150 [139]an[177][178]10000[167]an[178]9999
- 12160 [142]
- 12170 [143] *************************************
- 12180 [143] * regenmesserreset *
- 12190 [143] *************************************
- 12200 [151]56579,16
- 12210 [151]56577,[194](56577)[175][168]16
- 12220 [151]56577,[194](56577)[176]16
- 12230 [151]56579,0
- 12240 [153]"tagesregenmenge: "rm
- 12250 [129]ix[178]1[164]2000:[130]
- 12260 [142]
- 13000 [143] ************************************
- 13010 [143] * feuchtemodul *
- 13020 [143] * uebergabe: analogportnummer in bs*
- 13030 [143] ************************************
- 13040 nt[178]17803.166666:ns[178]65.79166666
- 13050 sw[178][194](56576):[151]56576,[194](56576)[175][168]4
- 13060 [158]53000
- 13070 [151]56576,sw
- 13080 fz [178] (255[171][194](56324))[170](255[171][194](56325))[172]256
- 13090 an [178][181]((nt[171]fz)[173]ns)
- 13100 [139]an[177][178]10000[167]an[178]9999
- 13110 [142]
- 59000 [143] ************************************
- 59010 [143] * *
- 59020 [143] * archivierungsmodul *
- 59030 [143] * uebergabe: modulnummer in bs *
- 59040 [143] * filename in n$(bs) *
- 59050 [143] * messwert in an *
- 59060 [143] * datum in d$ *
- 59070 [143] * zeit in t$ *
- 59080 [143] * *
- 59090 [143] ************************************
- 59100 mw(bs) [178] mw(bs) [170] an
- 59110 ze(bs) [178] ze(bs) [170] 1
- 59120 [139] ze(bs) [179] ra [167] 59310
- 59130 ze(bs) [178] 0
- 59140 [159]2,8,2,n$(bs)[170]",l,"[170][199](16):[143] dateilaenge 16 byte
- 59150 [153]"datei"n$(bs)
- 59160 [152]1,"p"[170][199](2)[170][199](0)[170][199](0)[170][199](0):[143] auf 1. byte positionieren
- 59170 [152]1,"p"[170][199](2)[170][199](0)[170][199](0)[170][199](0):[143] zur sicherheit zweimal
- 59180 [132]2,lr$:[143] anzahl schon vorhandener records
- 59190 lr [178] [197](lr$)[170]1
- 59200 hi [178] [181](lr[173]256)
- 59210 lo [178] lr[171]256[172]hi
- 59220 [152]1,"p"[170][199](2)[170][199](lo)[170][199](hi)[170][199](0):[143] neuen record positionieren
- 59230 [152]1,"p"[170][199](2)[170][199](lo)[170][199](hi)[170][199](0):[143] zur sicherheit zweimal
- 59240 rc$[178]t$[170][200]([196](mw(bs)[173]ra),4):[143] datensatz zusammensetzen
- 59250 mw(bs)[178]0
- 59260 [152]2,rc$:[143] record schreiben
- 59270 [152]1,"p"[170][199](2)[170][199](0)[170][199](0)[170][199](0)
- 59280 [152]1,"p"[170][199](2)[170][199](0)[170][199](0)[170][199](0)
- 59290 [152]2,lr
- 59300 [160]2:[143] datei schliessen
- 59310 [142]
- 60000 [153]"bitte zeit eingeben! (hh,mm)"
- 60010 [133]h$,m$
- 60020 h1[178][197]([200](h$,1)):h2[178][197]([201](h$,1))
- 60030 [139]h1[178]2[167]hh[178]144:[137]60060
- 60040 [139]h1[178]1[176]h1[178]0[167]hh[178]h1[172]16:[137]60060
- 60050 [153]"bitte format beachten (hh,mm)":[137]60000
- 60060 [139]h2[177][178]0[175]h2[179][178]9[167]hh[178]hh[170]h2:[137]60080
- 60070 [137]60050
- 60080 m1[178][197]([200](m$,1)):m2[178][197]([201](m$,1))
- 60090 [139]m1[179]0[176]m1[177]9[176]m2[179]0[176]m2[177]9[167]60050
- 60100 mm[178]m1[172]16[170]m2
- 60110 [151]56587,hh
- 60120 hl[178]h1[172]10[170]h2
- 60130 [151]56586,mm
- 60140 [151]56585,0
- 60150 [151]56584,0:[143] uhr startet
- 60160 [142]
- 61000 hh[178][194](56587):[143] uhr stoppt
- 61010 mm[178][194](56586)
- 61020 zs[178][194](56584):[143] uhr laeuft weiter
- 61030 h1[178][181](hh[173]16):[139]h1[178]9[167]h1[178]2
- 61040 h[178]h1[172]10[170](hh[175]15)
- 61050 [139]h[178]24[167]h[178]0
- 61060 [139]hl[179][177]rw [175]h[178]rw[167]re[178]1:[143] resetzeit erreicht
- 61070 hl[178]h
- 61080 mi[178][181](mm[173]16)[172]10[170](mm[175]15)
- 61090 [153]" cmdcmdcmdcmdcmdcmdcmdcmdcmdcmdcmdcmdcmdcmd"h":"mi" uhr"
- 61100 t$[178][196](h)[170][196](mi)
- 61110 [142]
-